﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik {
    
    
    public partial class OsaNoue : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.Kohustis, global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsaNoue {
        
        private string @__taodeldudMurdosa;
        
        private string @__moistetudMurdosa;
        
        private global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.INoudeOsa @__noudeosa;
        
        private System.Boolean? @__onRiigiOsaNoue;
        
        private string @__maksmiseinfo;
        
        public OsaNoue() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public OsaNoue(
                    string @taodeldudMurdosa, 
                    string @moistetudMurdosa, 
                    global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.INoudeOsa @noudeosa, 
                    System.Boolean? @onRiigiOsaNoue, 
                    string @maksmiseinfo, 
                    System.Int64? @objektID, 
                    System.Int64? @seisundKL, 
                    System.DateTime? @seisundKP, 
                    System.Int64? @versID, 
                    System.DateTime? @algusKP, 
                    string @alustaja, 
                    System.DateTime? @loppKP, 
                    string @lopetaja, 
                    System.Boolean? @taidetud, 
                    System.Int64? @taitmiseTapsustusKL, 
                    System.DateTime? @rakendumiseAlgusKP, 
                    System.DateTime? @rakendamiseTahtaegKP, 
                    System.DateTime? @rakendumiseLoppKP, 
                    System.Int64? @rakendamiseLoppAlusKL, 
                    System.Boolean? @tyhistatud, 
                    System.Boolean? @vabastatud, 
                    string @rakendamiseLoppPohjendus, 
                    System.Boolean? @voibKandaOsiti, 
                    System.Decimal? @taodeldavSumma, 
                    System.Int64? @taodeldavSummaValuutaKL, 
                    System.Decimal? @moistetudSumma, 
                    System.Int64? @moistetudSummaValuutaKL, 
                    System.Decimal? @tasutudSumma, 
                    System.Int64? @tasutudSummaValuutaKL, 
                    string @selgitus, 
                    global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsaline @osaline, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IKohustis> @lopetatavadKohustised, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMakseRekvisiidid> @makseRekvisiidid, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOlek> @seisundidKL, 
                    System.DateTime? @sisestamiseKP, 
                    string @sisestaja, 
                    System.DateTime? @muutmiseKP, 
                    string @muutja, 
                    System.DateTime? @sulgemiseKP, 
                    string @klientsysteemiID, 
                    System.Decimal? @moistetudOriginaalSumma, 
                    System.Int64? @moistetudOriginaalSummaValuutaKL, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsaMakse> @maksegraafik, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsaMakse> @osaMaksed, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.ILaekumine> @laekumised, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IKohustis> @ennistatavadKohustised, 
                    System.Boolean? @maksegraafikOnTyhistatav, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IOsaline> @vastutaja, 
                    System.DateTime? @vastutamiseAlgusKP, 
                    System.DateTime? @vastutamiseLoppKP, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.ITagasimakse> @tagasimaksed, 
                    global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IToiming @kohustiseMaaranudToiming, 
                    global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IToiming @kohustistViimatiMojutanudToiming, 
                    System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IETHoiatus> @hoiatused) : 
                base(@objektID, @seisundKL, @seisundKP, @versID, @algusKP, @alustaja, @loppKP, @lopetaja, @taidetud, @taitmiseTapsustusKL, @rakendumiseAlgusKP, @rakendamiseTahtaegKP, @rakendumiseLoppKP, @rakendamiseLoppAlusKL, @tyhistatud, @vabastatud, @rakendamiseLoppPohjendus, @voibKandaOsiti, @taodeldavSumma, @taodeldavSummaValuutaKL, @moistetudSumma, @moistetudSummaValuutaKL, @tasutudSumma, @tasutudSummaValuutaKL, @selgitus, @osaline, @lopetatavadKohustised, @makseRekvisiidid, @seisundidKL, @sisestamiseKP, @sisestaja, @muutmiseKP, @muutja, @sulgemiseKP, @klientsysteemiID, @moistetudOriginaalSumma, @moistetudOriginaalSummaValuutaKL, @maksegraafik, @osaMaksed, @laekumised, @ennistatavadKohustised, @maksegraafikOnTyhistatav, @vastutaja, @vastutamiseAlgusKP, @vastutamiseLoppKP, @tagasimaksed, @kohustiseMaaranudToiming, @kohustistViimatiMojutanudToiming, @hoiatused) {
            this.@__taodeldudMurdosa = @taodeldudMurdosa;
            this.@__moistetudMurdosa = @moistetudMurdosa;
            this.@__noudeosa = @noudeosa;
            this.@__onRiigiOsaNoue = @onRiigiOsaNoue;
            this.@__maksmiseinfo = @maksmiseinfo;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected OsaNoue(IOsaNoue @osaNoue) : 
                base(@osaNoue.ObjektID, @osaNoue.SeisundKL, @osaNoue.SeisundKP, @osaNoue.VersID, @osaNoue.AlgusKP, @osaNoue.Alustaja, @osaNoue.LoppKP, @osaNoue.Lopetaja, @osaNoue.Taidetud, @osaNoue.TaitmiseTapsustusKL, @osaNoue.RakendumiseAlgusKP, @osaNoue.RakendamiseTahtaegKP, @osaNoue.RakendumiseLoppKP, @osaNoue.RakendamiseLoppAlusKL, @osaNoue.Tyhistatud, @osaNoue.Vabastatud, @osaNoue.RakendamiseLoppPohjendus, @osaNoue.VoibKandaOsiti, @osaNoue.TaodeldavSumma, @osaNoue.TaodeldavSummaValuutaKL, @osaNoue.MoistetudSumma, @osaNoue.MoistetudSummaValuutaKL, @osaNoue.TasutudSumma, @osaNoue.TasutudSummaValuutaKL, @osaNoue.Selgitus, @osaNoue.Osaline, @osaNoue.LopetatavadKohustised, @osaNoue.MakseRekvisiidid, @osaNoue.SeisundidKL, @osaNoue.SisestamiseKP, @osaNoue.Sisestaja, @osaNoue.MuutmiseKP, @osaNoue.Muutja, @osaNoue.SulgemiseKP, @osaNoue.KlientsysteemiID, @osaNoue.MoistetudOriginaalSumma, @osaNoue.MoistetudOriginaalSummaValuutaKL, @osaNoue.Maksegraafik, @osaNoue.OsaMaksed, @osaNoue.Laekumised, @osaNoue.EnnistatavadKohustised, @osaNoue.MaksegraafikOnTyhistatav, @osaNoue.Vastutaja, @osaNoue.VastutamiseAlgusKP, @osaNoue.VastutamiseLoppKP, @osaNoue.Tagasimaksed, @osaNoue.KohustiseMaaranudToiming, @osaNoue.KohustistViimatiMojutanudToiming, @osaNoue.Hoiatused) {
            this.@__taodeldudMurdosa = @osaNoue.TaodeldudMurdosa;
            this.@__moistetudMurdosa = @osaNoue.MoistetudMurdosa;
            this.@__noudeosa = @osaNoue.Noudeosa;
            this.@__onRiigiOsaNoue = @osaNoue.OnRiigiOsaNoue;
            this.@__maksmiseinfo = @osaNoue.Maksmiseinfo;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        public OsaNoue(IKohustis @kohustis) : 
                base(@kohustis) {
        }
        
        public virtual string TaodeldudMurdosa {
            get {
                return this.@__taodeldudMurdosa;
            }
            set {
                this.@__taodeldudMurdosa = value;
            }
        }
        
        public virtual string MoistetudMurdosa {
            get {
                return this.@__moistetudMurdosa;
            }
            set {
                this.@__moistetudMurdosa = value;
            }
        }
        
        public virtual global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.INoudeOsa Noudeosa {
            get {
                return this.@__noudeosa;
            }
            set {
                this.@__noudeosa = value;
            }
        }
        
        public virtual System.Boolean? OnRiigiOsaNoue {
            get {
                return this.@__onRiigiOsaNoue;
            }
            set {
                this.@__onRiigiOsaNoue = value;
            }
        }
        
        public virtual string Maksmiseinfo {
            get {
                return this.@__maksmiseinfo;
            }
            set {
                this.@__maksmiseinfo = value;
            }
        }
    }
}
